package com.github.freewu.script;

import android.content.res.AssetManager;
import android.support.annotation.NonNull;

import com.github.freewu.script.js.RhinoContext;

import java.net.URL;

/**
 * Created by free on 2017/1/16 0016.
 */
public interface ScriptContext {
    /**
     * 增加全局变量
     * @param name 变量名
     */
    ScriptContext addGlobalVariable(String name, Object variable);

    /**
     * 增加执行脚本
     * @param script 脚本内容
     * @return 执行脚本返回的内容
     */
    ScriptContext addScript(String script);

    RhinoContext addScript(AssetManager manager,String path);

    RhinoContext addScript(URL url);

    /**
     * 执行脚本
     * @return
     */
    ScriptContext execute();
}
